#include "gestion_patient.h"


void ajouter_patient (void)
{
FILE *f=NULL;  //pointeur sur fichier
char id[7] , no[10] ,preno[10] ,eta[6];
int ag,reponse ;
do
{
f=fopen("patient.txt","a+"); //ouverture du fichier en mode apend
printf ("donnez le identifiant du patient\n ");fflush(stdin);//saisie du patient 
scanf("%s",id);
printf ("donnez le nom du patient \n");fflush(stdin);
scanf("%s",no);
printf ("donnez le prenom du patient\n ");fflush(stdin);
scanf("%s",preno);
printf ("donnez l'age du patient \n");
scanf("%d",&ag);
printf ("donnez l'etat du patient \n");fflush(stdin);
scanf("%s",eta);
fprintf (f," %s %s %s %d %s\n",id,no,preno,ag,eta);
printf("voulez vous ajoutez un autre patient 1=oui 0=non\n"); 
scanf("%d",&reponse);
}while(reponse==1) ;
fclose (f); 
}

void supprimer_patient (void)
{
FILE *f,*f1;
char id1[7], id[7] , no[10] ,preno[10] , eta[6];
int ag;
printf("entrez identifiant\n"); fflush(stdin);
scanf("%s",id1);
f=fopen("patient.txt","r");		//ouverture du fichier en read
f1=fopen("patient1.txt","w");          //ouverture du fichier en mode write
while(fscanf(f," %s %s %s %d %s\n",id,no,preno,&ag,eta)!=EOF)//lire le fichier jusqu'a la fin 
{
if (strcmp(id1,id)!=0)//comparer les deux chaines de caractere id1 et id
fprintf(f1," %s %s %s %d %s\n",id,no,preno,ag,eta);
}
remove("patient.txt");
rename("patient1.txt","patient.txt");
fclose (f);
fclose(f1); 
}

void affichage_patient (void)
{
char id[7] , no[10] ,preno[10] ,eta[6];
int ag;
FILE *f=NULL;
f=fopen("patient.txt","r") ;//ouverture en mode read
while (fscanf(f," %s %s %s %d %s\n",id,no,preno,&ag,eta)!=EOF) //lire le fichier jusqu'a la fin 
{
printf("l'identifiant du patient est: %s \nle nom du patient est: %s\n",id,no); 
printf("le prenom du patient est: %s \nl'age du patient est:%d\n l'etat du patient est: %s \n",preno,ag,eta);
}
fclose(f);
   }

 
void modifier_patient (void)
{
FILE *f,*f1;
char id1[7],id[7] , no[10] ,preno[10] ,eta[6];
int ag;
printf("entrez identifiant\n"); fflush(stdin);
scanf("%s",id1);
f=fopen("patient.txt","r");		//ouverture du fichier en read
f1=fopen("patient1.txt","w");          //ouverture du fichier en mode write
while(fscanf(f,"%s %s %s %d %s\n",id,no,preno,&ag,eta)!=EOF) //lire le fichier jusqu'a la fin 
{
if (strcmp(id1,id)!=0)//comparer les deux chaines de caractere id1 et id si elle sont diff donc l'ecrire dans l'autre fichier 
fprintf(f1,"%s %s %s %d %s\n",id,no,preno,ag,eta); //ecrire les champs dans le deusieme fichier f1
else
{

printf ("donnez le identifiant du patient \n");fflush(stdin);
scanf("%s",id);
printf ("donnez le nom du patient \n");fflush(stdin);
scanf("%s",no);
printf ("donnez le prenom du patient \n");fflush(stdin);
scanf("%s",preno);
printf ("donnez l'age du patient \n"); 
scanf("%d",&ag);
printf ("donnez l'etat du patient \n");fflush(stdin);
scanf("%s",eta);
fprintf(f1,"%s %s %s %d %s\n",id,no,preno,ag,eta);
}
}
remove("patient.txt");//effacer le fichier f)
rename("patient1.txt","patient.txt");//renomer le f& par le nom f
fclose (f);
fclose(f1); 
}


